<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" %>
<html>
<head>
    <meta>
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <title>知云——针对编程的个性化学习推荐系统</title>
    <%
        pageContext.setAttribute("APP_PATH", request.getContextPath());
    %>
    <base href="${APP_PATH}">
    <link rel="shortcut icon" type="image/x-icon" href="${APP_PATH}/static/favicon.ico"/>
    <link rel="stylesheet" href="${APP_PATH}/static/css/bootstrap.min.css">
    <link rel="stylesheet" href="${APP_PATH}/static/css/toastr.min.css">
    <link rel="stylesheet" href="${APP_PATH}/static/css/offcanvas.css">
    <link rel="stylesheet" href="${APP_PATH}/static/css/fontawesome.min.css">

</head>
<body>

<jsp:include page="${APP_PATH}/common/head-question.jsp"/>
<c:choose>
    <c:when test="${not empty user}">
        <%--用户已登陆--%>
        <div id="defaultDiv" data-userId="${user.id}" class="mt-2 col-sm-12 col-md-12 col-lg-9"
             style="margin-left: auto;margin-right: auto;">
            <div class="d-flex p-3 bg-white mb-2 rounded shadow-sm">
                <div class="flex-fill text-center"><a href="/question-all" class="text-dark"><i class="fa fa-question"></i>我的提问</a></div>
                <div class="flex-fill text-center"><a href="/answer-mine" class="text-dark"><i class="fa fa-table"></i>我的回答</a></div>
                <div class="flex-fill text-center"><a href="#" class="text-danger"><i class="fa fa-anchor"></i>关注问题</a></div>
                <div class="flex-fill text-center"><a href="/question-write" class="text-dark"><i class="fa fa-arrow-circle-right"></i>去提问</a></div>
            </div>

            <div class="bg-white p-3 rounded shadow-sm">
                <div id="mainArea">

                </div>
            </div>
            <div id="pageNavArea">

            </div>
        </div>
    </c:when>
    <c:otherwise>
        <%--没有登录，提示用户--%>
        <div class="offset-lg-4 col-lg-4 col-md-12 col-sm-12">
            <div class="alert-warning p-3">
                <h4>您还没有登录，请先<a href="/login">登录</a></h4>
            </div>
        </div>
    </c:otherwise>
</c:choose>
<div class="p-4"></div>

<script src="${APP_PATH}/static/js/jquery-3.3.1.min.js"></script>
<script src="${APP_PATH}/static/js/bootstrap.min.js"></script>
<script src="${APP_PATH}/static/js/toastr.min.js"></script>
<script src="${APP_PATH}/static/js/offcanvas.js"></script>

<script>
    //取消关注
    function unStarQuestion(ele) {
        //获取questionId
        var questionId = $(ele).attr("data-questionId");
        var userId = $("#defaultDiv").attr("data-userId");
        if (questionId.length === 16) {
            $.ajax({
                url:'/cancelStarQuestion/'+userId+'/'+questionId,
                type:'GET',
                success:function (result) {
                    if (result.code === 100) {
                        toastr.success("操作成功。");
                        //删除该div
                        $("div[data-question=" + questionId + "]").remove();
                    }else{
                        toastr.error("操作失败，请稍后重试！！！");
                    }
                }
            });
        }

    }
    function buildPageArea(result) {
        //清空
        var $mainArea = $("#mainArea");
        $mainArea.empty();
        if (result.extend.pageInfo.list.length > 0) {
            $.each(result.extend.pageInfo.list, function (index, item) {
                var div_out = $("<div data-question='" + item.id + "' class='border-bottom border-gray p-1' style='position:relative;'></div>");
                var button1=$("<a class='btn btn-sm btn-outline-info' data-questionId='"+item.id+"' onclick='unStarQuestion(this)'>取消关注</a>");
                $("<div style='position:absolute;top:4px;right:4px;'></div>").append(button1).appendTo(div_out);

                var h5 = $("<h5>").append($("<a class='text-dark' href='/question/"+item.id+"'>").append(item.questiontitle));
                var edittime = new Date(item.edittime).toLocaleString();
                var span = $("<span style='font-size:small'>" + edittime + "</span>");
                div_out.append(h5).append(span).appendTo($mainArea);
            });
        }else{
            toastr.info("你还没有关注任何问题！");
        }
    }

    function buildPageNavArea(result) {
        var pageNavArea = $("#pageNavArea");
        pageNavArea.empty();

        var div = $("<div class='p-2'>");
        var ul = $("<ul></ul>").addClass("pagination");
        //遍历给ul中添加页码提示
        $.each(result.extend.pageInfo.navigatepageNums, function (index, item) {

            var numLi = $("<li class='page-item'></li>").append($("<a class='btn btn-sm btn-outline-primary mr-2'></a>").append(item));
            if (result.extend.pageInfo.pageNum === item) {
                //当前页按钮，不可点击
                numLi.find("a").removeClass("btn-outline-primary");
                numLi.find("a").addClass("disabled");
                numLi.find("a").addClass("btn-primary");
            }
            numLi.click(function () {
                toPage(item);
            });
            ul.append(numLi);
        });
        div.append(ul).appendTo(pageNavArea);
    }

    function toPage(pn) {
        <%--分页获取关注的问题--%>
        var userId = $("#defaultDiv").attr("data-userId");
        if (userId.length === 16) {
            $.ajax({
                url: '/starQuestion/'+userId+"/"+pn ,
                type: 'GET',
                success: function (result) {
                    console.log(result);
                    if (result.code === 100) {
                        buildPageArea(result);
                        buildPageNavArea(result);
                    } else {
                        toastr.error("获取数据失败，请登录后重试！");
                    }
                }
            });
        } else {
            toastr.error("请登录后重试！！");
        }
    }

    $(function () {
        toPage(1);
    });
</script>
</body>
</html>
